#ifndef CORE_KEYBOARD_H
#define CORE_KEYBOARD_H

#include "Common/Common.h"
#include "KeyboardKey.h"
#include "IKeyboardListener.h"

namespace core
{

class Keyboard
{
private:

	Keyboard( )
	{
	}

	~Keyboard( )
	{
	}

	static bool _keys[ LAST ];
	static Vector<IKeyboardListener*> _listeners;

public:
	static void OnPressKey( KeyboardKey key );
	static void OnReleaseKey( KeyboardKey key );

	static bool IsKeyPressed( KeyboardKey key );

	static void AddListener( IKeyboardListener* listener );
	static void RemoveListener( IKeyboardListener* listener );
};
}
#endif
